Field Selector
개요
kubectl를 사용할 때 사용되는 셀렉팅 방식.[1]
쿠버네티스 오브젝트를 조회할 때 조금 더 조건을 걸어 조회하는 방식을 제공해준다.
kubectl get pods --field-selector status.phase=Running
예를 들자면 이런 식으로, 현재 돌아가고 있는 파드만 조회하는 것이 가능하다.
각 리소스들이 서로를 찾기 위해 사용하는 라벨 셀렉터와는 다른 것이니 참고.
지원되는 필드
일단 모든 리소스들이 metadata.name
, metadata.namespace
는 가진다.
그러나 나머지는 리소스 별로 다르며, 없는 리소스를 조회하려고 하면 에러가 난다.
각 리소스별로 지원되는 필드는 위와 같다.
커스텀 리소스는?
커스텀 리소스도 위의 기본 필드는 제공된다.
여기에 만들 당시에 직접 몇 가지 필드를 제공하도록 설정할 수 있다.
지원 연산자
필드는 라벨처럼 집합 관련 연산자를 지원하지 않는다.
즉 필드는 이거나, 아니거나, 없거나 딱 이거밖에 없다는 것이다.
=, ==
!=
그래서 사용되는 것은 딱 이것들 밖에 없다.
그밖에
엄청난 것들은 그다지 없다.
그냥 사용방법에 대한 것들 조금 있는데..
일단 쉼표를 통해 여러 필드 셀렉터를 한꺼번에 지정할 수 있다.
and의 의미를 가진다.
여러 개의 리소스 타입을 한꺼번에 조회할 때도 사용할 수 있다.